tempfile

您所在的位置:网站首页 python 获取当前路径下的所有文件数据的方法 tempfile

tempfile

2024-07-09 19:18| 来源: 网络整理| 查看: 265

以最安全的方式创建一个临时文件。假设所在平台正确实现了 os.open() 的 os.O_EXCL 标志,则创建文件时不会有竞争的情况。该文件只能由创建者读写,如果所在平台用权限位来标记文件是否可执行,那么没有人有执行权。文件描述符不会过继给子进程。

与 TemporaryFile() 不同,mkstemp() 用户用完临时文件后需要自行将其删除。

如果 suffix 不是 None 则文件名将以该后缀结尾,是 None 则没有后缀。mkstemp() 不会在文件名和后缀之间加点,如果需要加一个点号,请将其放在 suffix 的开头。

如果 prefix 不是 None,则文件名将以该前缀开头,是 None 则使用默认前缀。默认前缀是 gettempprefix() 或 gettempprefixb() 函数的返回值(自动调用合适的函数)。

如果 dir 不为 None,则在指定的目录创建文件,是 None 则使用默认目录。默认目录是从一个列表中选择出来的,这个列表不同平台不一样,但是用户可以设置 TMPDIR、TEMP 或 TMP 环境变量来设置目录的位置。因此,不能保证生成的临时文件路径很规范,比如,通过 os.popen() 将路径传递给外部命令时仍需要加引号。

如果 suffix、prefix 和 dir 中的任何一个不是 None,就要保证它们是同一数据类型。如果它们是 bytes,则返回的名称的类型就是 bytes 而不是 str。如果确实要用默认参数,但又想要返回值是 bytes 类型,请传入 suffix=b''。

如果指定了 text 且为真值,文件会以文本模式打开。 否则,文件(默认)会以二进制模式打开。

mkstemp() 返回一个元组,元组中第一个元素是句柄,它是一个系统级句柄,指向一个打开的文件(等同于 os.open() 的返回值),第二元素是该文件的绝对路径。

引发一个 tempfile.mkstemp 审计事件,附带参数 fullpath。

在 3.5 版本发生变更: 现在,suffix、prefix 和 dir 可以以 bytes 类型按顺序提供,以获得 bytes 类型的返回值。之前只允许使用 str。suffix 和 prefix 现在可以接受 None,并且默认为 None 以使用合适的默认值。

在 3.6 版本发生变更: dir 参数现在可接受一个路径类对象 (path-like object)。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3